home *** CD-ROM | disk | FTP | other *** search
/ APC & TCP 4 / APC & TCP 4.iso / games / publicdomain / r / rushhour / data / level.txt < prev    next >
Text File  |  1997-04-30  |  4KB  |  134 lines

  1. /*
  2. Dies ist ein Beispiel level.txt
  3. Dieses File sollte man in sein Stadtverzeichnis
  4. kopieren und entsprechend abaendern.
  5. */
  6.  
  7.  
  8. /* Daten fuer den ersten Level */
  9. "Levelname",    /* Levelname in Anfuehrungszeichen */
  10.     PALETTE,    /* Zahl von 0-3, gibt die Farbpalette an */
  11.     BACKITEM,    /* Zahl von 0-3, gibt die Fuellgrafik an, wo keine Strasse ist */
  12.     GFX,        /* Zahl von 0-4, gibt die Grafik fuer die Autos an */
  13.  
  14. /* Jeweils 3 Zahlen fuer eine Schwierigkeitsstufe */
  15.     DELAY,RANDOM,TODO,    /* easy */
  16.     DELAY,RANDOM,TODO,    /* medium */
  17.     DELAY,RANDOM,TODO,    /* hard */
  18.  
  19. /* DELAY definiert die Frequenz, mit der die neuen Autos erscheinen    */
  20. /*       5=sehr schnell, 20=sehr langsam                               */
  21.  
  22. /* RANDOM Wahrscheinlichkeit, mit der ein Auto auch wirklich erscheint */
  23. /*       0=erscheint immer,  7=erscheint nicht so oft                  */
  24.  
  25. /* Die beiden Werte DELAY und RANDOM geben also an, wie schnell neue   */
  26. /* Autos dazu kommen. Kleine Werte machen die Sache schwierig, weil    */
  27. /* viele Autos sehr schnell kommen. Groessere Zahlenwerte erleichtern  */
  28. /* das Spiel.                                                          */
  29.  
  30. /* TODO ist die Anzahl der Autos, die den Bildschirm verlassen muessen */
  31. /*  bevor der blaue Bonusmodus beginnt                                 */
  32.  
  33.  
  34. /* Eine Levelbeschreibung kann dann noch optional                      */
  35. /*    folgende zwei Abschnitte enthalten:                              */
  36.  
  37.  
  38. /* Optionaler Abschnitt zur Definition der Robotanzahl                 */
  39.     robots,3,
  40. /* Das Schluesslewort muss genauso 'robots' geschrieben werden.        */
  41. /* Die anschliessende Zahl gibt an, wieviel Robots dem Spieler         */
  42. /* im Einspielermodus zur Hand gehen beim schalten.                    */
  43.  
  44. /* Optionaler Abschnitt zur Definition von Connections                 */
  45.     connect,
  46.     AMPELNUMMER,RICHTUNG,AMPELNUMMER2,
  47.     AMPELNUMMER,RICHTUNG,AMPELNUMMER2,
  48.     endconnect,
  49. /* Dieser Abschnitt wird in einem Sonderkapitel ganz unten erlaeutert  */
  50.  
  51.  
  52. /* es koennen nun beliebig viele weitere Leveldefinitionen folgen */
  53.  
  54. "l1",2,1,4,
  55.     17,4,100,
  56.     16,4,130,
  57.     15,3,160,
  58.     robots,2,
  59.  
  60. "level2",1,0,2,
  61.     16,4,100,
  62.     15,5,120,
  63.     14,2,240,
  64.  
  65. /* Das Schluesselwort 'end' schliesst die Definitionen ab */
  66. end
  67.  
  68.  
  69. /*
  70.   Bei Unklarheiten hilft vielleicht auch ein Blick in
  71.    die Beispiel-Files
  72.       RushHour/data/Atlanta/level.txt
  73.       RushHour/data/Denver/level.txt
  74. */
  75.  
  76.  
  77.  
  78. /*
  79. Erlaeuterungen zum connect-disconnect Abschnitt
  80. -----------------------------------------------
  81.  
  82. Der Abschnitt beginnt mit dem Schluesselwort 'connect' und
  83. endet mit dem Schluesselwort 'endconnect'.
  84. Dazwischen werden die sogenannten Connections angegeben.
  85. Eine Connection sagt dem Programm nachher, wie der Ampelcursor
  86. bewegt werden kann. Bei Maussteuerung ist das nicht wichtig
  87. aber bei Cursortastensteuerung kann das Programm nicht immer
  88. erkennen, wie die Ampeln verbunden sind. Der Algorithmus
  89. erkennt zunaechst nur die Ampeln als verbunden, wenn sie
  90. auf gleicher Hoehe liegen (X oder Y Koordinate ist genau gleich).
  91. Die Verbindung fuer versetzt liegende Ampeln muss man also zusaeztlich
  92. angeben. Ein Beispiel:
  93. Nehmen wir an, ein Level haette folgende Ampelkreuzungen:
  94.  
  95.        X               X
  96.  
  97.                     X
  98.        X
  99.  
  100.  
  101. Die Kreuzungen werden dann von oben nach unten von links nach rechts
  102. durchnummeriert:
  103.  
  104.        0               1
  105.  
  106.                     2
  107.        3
  108.  
  109. Das Programm erkennt automatisch, dass man von 0 nach 1 und von
  110. 0 nach 3 springen kann. Die Verbindung mit Ampel 2 muss aber
  111. zusaetzlich definiert werden:
  112.     connect,
  113.     1,d,2,
  114.     2,u,1,
  115.     3,r,2,
  116.     2,l,3,
  117.     endconnect,
  118.  
  119. Die erste Zeile  (1,d,2) besagt, dass man von Ampel 1 nach 2 kommt,
  120. wenn man CursorDown drueckt. Die Nummern bezeichnen also die Ampeln,
  121. und die Buchstaben haben folgende Bedeutung:
  122.    u = Up = Cursor hoch
  123.    d = Down = Cursor runter
  124.    l = Left = Cursor links
  125.    r = Right = Cursor rechts
  126.  
  127. Bei groesseren Levels mit vielen Ampeln kann das ganze in Arbeit ausarten.
  128. Solange mit Maussteuerung im Einspielermodus gespielt wird, kann man
  129. aber auch genauso gut auf den Connect-Abschnitt verzichten.
  130. Wenn mir jemand seine Levels schickt, kann ich ja versuchen, etwaig
  131. fehlende Connections nachtraeglich zu definieren. Immerhin habe ich
  132. inzwischen Uebung :)
  133. */
  134.